// pages/courseSearch/courseSearch.js
// 定义数据库
const DB = wx.cloud.database();
const Aerobics = DB.collection("Aerobics");
const Stret = DB.collection("Stret");
const Yoga = DB.collection("Yoga");
const Warm = DB.collection("Warm");
// 定义数据库操作命令符
const _ = DB.command
Page({

  /**
   * 页面的初始数据
   * 定义所需要绑定的变量
   */
  data: {
    SEARCH: [],//健身操变量绑定
    YOGA: [],  //瑜伽变量绑定
    WARM : [], //热身变量绑定
    STR : []   //拉伸变量绑定

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },
  // 调用搜索函数 使用同一个关键字对4个数据库搜索
  search: function (e) {
    // 重新定义this变量 避免不能成功调用 一般命名为_this or that
    let that = this
    // 获取输入的信息
    let keyword = e.detail.value.info
    console.log(keyword)
    // 使用数据库模糊查询 条件为关键字 keyword
    Aerobics.where(_.or([{
      titel: DB.RegExp({
        regexp: '.*' + keyword,
        options: 'i',
      })
    },
    {
      address: DB.RegExp({
        regexp: '.*' + keyword,
        options: 'i',
      })
    }
    ])).get({
      success: res => {
        console.log(res)
        // 成功查询数据 将数据绑定到wxml界面去显示 以下3种相同 不做解释
        that.setData({
          SEARCH: res.data
        })
      },
      fail: err => {
        console.log(err)
      }
    })

    Yoga.where(_.or([{
      titel: DB.RegExp({
        regexp: '.*' + keyword,
        options: 'i',
      })
    },
    {
      address: DB.RegExp({
        regexp: '.*' + keyword,
        options: 'i',
      })
    }
    ])).get({
      success: res => {
        console.log(res)
        that.setData({
          YOGA: res.data
        })
      },
      fail: err => {
        console.log(err)
      }
    })

    Stret.where(_.or([{
      titel: DB.RegExp({
        regexp: '.*' + keyword,
        options: 'i',
      })
    },
    {
      address: DB.RegExp({
        regexp: '.*' + keyword,
        options: 'i',
      })
    }
    ])).get({
      success: res => {
        console.log(res)
        that.setData({
          STR: res.data
        })
      },
      fail: err => {
        console.log(err)
      }
    })

    Warm.where(_.or([{
      titel: DB.RegExp({
        regexp: '.*' + keyword,
        options: 'i',
      })
    },
    {
      address: DB.RegExp({
        regexp: '.*' + keyword,
        options: 'i',
      })
    }
    ])).get({
      success: res => {
        console.log(res)
        that.setData({
          WARM: res.data
        })
      },
      fail: err => {
        console.log(err)
      }
    })
  },
  //获取id
  jumpDetails(e) {
    console.log(e)
    let id = e.currentTarget.dataset.searchid
    wx.navigateTo({
      url: '/pages/details/details?aerId=' + id,
    })
  }
})